#ifndef __PAGELIB_HPP__
#define __PAGELIB_HPP__

#include "Configuration.h"
#include "DirScanner.h"


#include <vector>
#include <map>

using std::map;
using std::vector;
using std::string;
using std::pair;

class WebPage;
class PageLibPreprocessor;

class PageLib{
public:
    PageLib(Configuration* conf, 
            DirScanner& dirScanner);
            /* PageLibPreprocessor & process); */ 
            /* FileProcessor& fileProcessor); */
    
    void create();
    void store();

    vector<WebPage>  & getWebPages();

private:
    DirScanner& _dirScanner;
    vector<string> _files;
    map<int, pair<int, int>> _offsetLib;

    vector<WebPage> _webPages;
    /* PageLibPreprocessor & _process; */

    Configuration* _conf;
};

#endif
